Since the advent of the computer age, users have had the need to backup a variety of data files to prevent a loss of valuable data in the event of a loss or corruption of original files. Users routinely backup individual files, and often users or systems administrators backup entire computer system file directories where hundreds or thousands of files are backed up. Such gross backup methods generally save a new copy of each backed up file in the directory even if many of the files have not been modified since the last backup.
Software applications have been developed for automatically modifying a plurality of files in order to correct a certain type of problem or to affect a certain type of change to any file in a given memory directory or subdirectory requiring a correction or change. For example, a common problem with conventional or digital photography is the introduction of red dots over the pupils of photographic subjects. Software applications have been developed for scanning a directory of photographs to locate and correct any photograph with the described color deficiency. Unless the user is prompted at the correction or change of each file for saving each changed file, the entire directory of files may be saved as backup files even though only a few files may have been modified by the automated file modification application. Such a method is time consuming, consumes large amounts of memory space, and requires the users to review every backed up file to determine whether the modifications to individual files are satisfactory. On the other hand, if the user is prompted after the modification of any individual file to save the modified file, any efficiency gained from using an automated modification application is lost. In either case, if modified files are simply saved over (written over) the original files, then users have no way to re-modify the original files if the first modification is not satisfactory. That is, the user will have lost the original files.
Accordingly, there is a need for a method and system for recursively backing up modified data files that only backs up any modified data files and that provides a user with an efficient way to determine which original files have been modified to allow the user to readily locate one or more original files if the user is not satisfied with modifications. It is with respect to these and other considerations that the present invention has been made.